home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 July: Mac OS SDK / Dev.CD Jul 99 SDK1.toast / Development Kits / Mac OS / QuickDraw3D 1.6 SDK / Mac SampleCode New for 1.6 / RollerCoasterSampleMac / Interfaces / Document.h next >
Encoding:
C/C++ Source or Header  |  1999-05-18  |  2.4 KB  |  72 lines  |  [TEXT/dosa]

  1. /*
  2.     File:        Document.h
  3.     
  4.     Contains:    Contains our custom document structure
  5.     
  6.     Written by:    Scott Kuechle, based on original Gerbils code by Brian Greenstone
  7.  
  8.     Copyright:    © 1998 by Apple Computer, Inc. All rights reserved
  9.     
  10.     Change History (most recent first)
  11.     
  12.         <1>        9/1/98        srk        first file
  13.  
  14.  
  15. */
  16.  
  17. #pragma once
  18.  
  19. /************************************************************
  20. *                                                           *
  21. *    INCLUDE FILES                                          *
  22. *                                                           *
  23. *************************************************************/
  24.  
  25. #if defined(_MSC_VER)
  26. #include "WinPrefix.h"
  27. #else
  28. #include <ConditionalMacros.h>
  29. #endif
  30.  
  31.     /* Windows headers */
  32. #if TARGET_OS_WIN32
  33.     #define    STRICT
  34.     #include <windows.h>        /* required for all Windows applications */
  35. #endif
  36.  
  37. #include "Track.h"
  38.  
  39. /************************************************************
  40. *                                                           *
  41. *    STRUCTURE DEFINITIONS                                  *
  42. *                                                           *
  43. *************************************************************/
  44.  
  45. struct _documentRecord
  46. {
  47.     #if TARGET_OS_MAC
  48.         WindowPtr        fMainWindow;            /* Mac window to draw into */
  49.     #else if TARGET_OS_WIN32
  50.         HWND            fMainWindow;            /* Win32 destination window to blit offscreen buffer onto */
  51.         char            fGroundTextureFilePath[MAX_PATH];
  52.         char            fTrackTextureFilePath[MAX_PATH];
  53.     #endif
  54.  
  55.     TQ3ViewObject        fView ;                    /* the view for the scene */
  56.     TQ3GroupObject        fTrackGroup ;            /* object in the scene being modelled */
  57.     TQ3GroupObject        fGroundGroup ;            /* object in the scene being modelled */
  58.     TQ3StyleObject        fInterpolation ;        /* interpolation style used when rendering */
  59.     TQ3StyleObject        fBackFacing ;            /* whether to draw shapes that face away from the camera */
  60.     TQ3StyleObject        fFillStyle ;            /* whether drawn as solid filled object or decomposed to components */
  61.     TQ3ShaderObject        fTrackShader;
  62.     TQ3CameraObject        fCamera;
  63.  
  64.     TrackSectionType    fTrackSectionList[MAX_TRACK_SECTIONS];
  65.     PartType            fPartsList[MAX_PARTS];
  66.     NubEntryType        fNubArray[MAX_SPLINE_NUBS];
  67.     NubEntryType        *fSplinePointsPtr;
  68.     long                fNumSplineNubs;
  69.     long                fNumSplinePoints;
  70.     long                 fTrackIndex;
  71. };
  72. typedef struct _documentRecord DocumentRec, *DocumentPtr, **DocumentHdl ;